using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("MobileChatLogFrame")]
	public class MobileChatLogFrame : MonoBehaviour
	{
		[Attribute38("MobileChatLogFrame.MessageInfo")]
		public class MessageInfo : MonoClass
		{
			public Transform messagesTopLeft => method_3<Transform>("messagesTopLeft");

			public Transform messagesBottomRight => method_3<Transform>("messagesBottomRight");

			public MessageInfo(IntPtr address, string className)
				: base(address, className)
			{
			}

			public MessageInfo(IntPtr address)
				: this(address, "MessageInfo")
			{
			}
		}

		[Attribute38("MobileChatLogFrame.InputInfo")]
		public class InputInfo : MonoClass
		{
			public Transform inputTopLeft => method_3<Transform>("inputTopLeft");

			public Transform inputBottomRight => method_3<Transform>("inputBottomRight");

			public InputInfo(IntPtr address, string className)
				: base(address, className)
			{
			}

			public InputInfo(IntPtr address)
				: this(address, "InputInfo")
			{
			}
		}

		[Attribute38("MobileChatLogFrame.Followers")]
		public class Followers : MonoClass
		{
			public UIBFollowObject playerInfoFollower => method_3<UIBFollowObject>("playerInfoFollower");

			public UIBFollowObject closeButtonFollower => method_3<UIBFollowObject>("closeButtonFollower");

			public UIBFollowObject bubbleFollower => method_3<UIBFollowObject>("bubbleFollower");

			public Followers(IntPtr address, string className)
				: base(address, className)
			{
			}

			public Followers(IntPtr address)
				: this(address, "Followers")
			{
			}

			public void UpdateFollowPosition()
			{
				method_8("UpdateFollowPosition");
			}
		}

		public Spawner playerIconRef => method_3<Spawner>("playerIconRef");

		public TouchList messageFrames => method_3<TouchList>("messageFrames");

		public InputInfo inputInfo => method_3<InputInfo>("inputInfo");

		public TextField inputTextField => method_3<TextField>("inputTextField");

		public MessageInfo messageInfo => method_3<MessageInfo>("messageInfo");

		public NineSliceElement window => method_3<NineSliceElement>("window");

		public UberText nameText => method_3<UberText>("nameText");

		public UIBButton closeButton => method_3<UIBButton>("closeButton");

		public MobileChatNotification notifications => method_3<MobileChatNotification>("notifications");

		public GameObject medalPatch => method_3<GameObject>("medalPatch");

		public TournamentMedal medal => method_3<TournamentMedal>("medal");

		public ChatLog chatLog => method_3<ChatLog>("chatLog");

		public Followers followers => method_3<Followers>("followers");

		public PlayerIcon playerIcon => method_3<PlayerIcon>("playerIcon");

		public BnetPlayer receiver => method_3<BnetPlayer>("receiver");

		public bool HasFocus => method_11<bool>("get_HasFocus", Array.Empty<object>());

		public BnetPlayer Receiver => method_14<BnetPlayer>("get_Receiver", Array.Empty<object>());

		public MobileChatLogFrame(IntPtr address, string className)
			: base(address, className)
		{
		}

		public MobileChatLogFrame(IntPtr address)
			: this(address, "MobileChatLogFrame")
		{
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void Start()
		{
			method_8("Start");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void Update()
		{
			method_8("Update");
		}

		public void Focus(bool focus)
		{
			method_8("Focus", focus);
		}

		public void SetWorldRect(float x, float y, float width, float height)
		{
			method_8("SetWorldRect", x, y, width, height);
		}

		public void OnPlayersChanged(BnetPlayerChangelist changelist, object userData)
		{
			method_8("OnPlayersChanged", changelist, userData);
		}

		public void OnCloseButtonReleased(UIEvent e)
		{
			method_8("OnCloseButtonReleased", e);
		}

		public bool IsFullScreenKeyboard()
		{
			return method_11<bool>("IsFullScreenKeyboard", Array.Empty<object>());
		}

		public void OnInputChanged(string input)
		{
			method_8("OnInputChanged", input);
		}

		public void OnInputComplete(string input)
		{
			method_8("OnInputComplete", input);
		}

		public void OnInputCanceled()
		{
			method_8("OnInputCanceled");
		}

		public void UpdateReceiver()
		{
			method_8("UpdateReceiver");
		}

		public void UpdateBackgroundCollider()
		{
			method_8("UpdateBackgroundCollider");
		}

		public void UpdateFollowers()
		{
			method_8("UpdateFollowers");
		}
	}
}
